A network numbering plan is a convention that defines the signals that one part of a telecommunications system, such as a user terminal, must provide to other parts of the system, such as switching systems, in order to obtain the desired services and connections. Examples of network numbering plans are the seven-to-ten digit North American numbering plan used by the public telephone networks of the U.S.A. and Canada, and the various three-to-seven digit numbering plans used by private (e.g., intra-corporate) telephone networks in the U.S.A. Each of the numbering plans is predefined and has a strict internal logical structure.
Call-processing arrangements of switching systems are conventionally designed to support a particular network numbering plan--or perhaps two plans with the addition of an alternate routing arrangement (essentially a second independent call-processing arrangement) to the systems. To make their task easier and more manageable, the designers of call-processing arrangements take advantage of the strict structure of the numbering plan or plans that they intend to support. They incorporate rules and assumptions that can be derived from the structure of the supported numbering plan into the design of the call-processing arrangement's functional components (e.g., software in the case of stored-program controlled switching systems). This allows the designers to avoid having to consider and include in their design any data, logical constructs, variations, permutations, and capabilities that the supported numbering plan does not encompass. The call-processing arrangement is thereby made smaller, faster, and less expensive--streamlined to the task at hand.
The unfortunate consequence of this approach to the design of call-processing arrangements is that the resultant call-processing arrangement is then inherently and integrally tied to the numbering plan which it supports. This means that it is very difficult to adapt the arrangement to support modifications or extensions of the supported numbering plan. For example, an owner of a private network cannot customize, personalize, or expand the network's numbering plan, but is stuck with whatever capability the switching system manufacturer has thought fit to provide. Furthermore, a total change in the supported numbering plan--such as typically occurs, for example, when a switching system is being adapted by a manufacturer for sale into a foreign country--typically requires a complete change-out of the call-processing arrangement. That is, the original call-processing arrangement must be discarded and replaced by a completely new call-processing arrangement, one that has been designed ab initio to support the new numbering plan.
The art recognizes the problem, and attempts have been made to provide some flexibility in call-processing arrangements to make them adaptable to numbering plan variations or extensions. But this has typically been quite difficult and expensive to accomplish in relation to the amount of flexibility gained thereby. This is, in large measure, due to the traditional approach to how call-processing is accomplished: simplistically put, call-processing has typically been viewed as a giant pattern-matching exercise. In pattern matching, every permissible combination of variable pattern features must be defined and made available for comparison. This means that every item of numbering plan flexibility--every feature and feature variation that is accommodated--exponentially increases the size and complexity of the call-processing arrangement. Hence, in the prior art, only limited numbering-plan flexibility has been achieved in practice.